package com.song.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.song.entity.UserInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.song.entity.vo.*;
import com.song.exception.BusinessException;

/**
 * <p>
 * 用户基本信息 服务类
 * </p>
 *
 * @author Song
 * @since 2025-01-03
 */
public interface UserInfoService extends IService<UserInfo> {

    public void register(RegisterVO registerVO);

    public UserInfoVO login(LoginVO loginVO, String ip) throws BusinessException;

    public UserIndexVO getUserIndexVoByUserId(Long userId);

    IPage<UserInfo> listPage(Page<UserInfo> pages, UserInfoQuery userInfoQuery);

    void lock(Long id, Integer status);
}
